{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 多元高斯分布\n",
    "\n",
    "一个向量形式的随机变量$X=\\left[X_1\\cdots X_n\\right]^T$，期望为$\\mu\\in\\mathbb R^n$，协方差矩阵为$\\varSigma\\in\\mathbb S_{++}^n$（在[线性代数](sn01.ipynb)笔记中$\\mathbb S_{++}^n$为$n\\times n$正定对称矩阵空间，具体定义为$\\mathbb S_{++}^n=\\left\\{A\\in\\mathbb R^{n\\times n}: A=A^T,\\ \\forall x\\in\\mathbb R^n\\land x\\neq0\\to x^TAx\\gt0\\right\\}$），如果随机变量的概率密度函数（这篇笔记中我们使用$p(\\bullet)$表示概率密度函数，代替[概率论](sn02.ipynb)笔记中的$f_X(\\bullet)$）能够定义为：\n",
    "\n",
    "$$\n",
    "p\\left(x;\\mu,\\varSigma\\right)=\\frac{1}{\\left(2\\pi\\right)^{n/2}\\left\\lvert\\varSigma\\right\\rvert^{1/2}}\\exp\\left(-\\frac{1}{2}\\left(x-\\mu\\right)^T\\varSigma^{-1}\\left(x-\\mu\\right)\\right)\n",
    "$$\n",
    "\n",
    "我们就称该随机变量服从**多元正态（高斯）分布（multivariate normal (or Gaussian) distribution）**，写作$X\\sim\\mathcal N\\left(\\mu,\\varSigma\\right)$。在这篇笔记中，我们简要讨论一下多元高斯分布的基本属性。\n",
    "\n",
    "## 1. 与单变量高斯分布的关系\n",
    "\n",
    "回忆**单变量正态分布（a univariate normal (or Gaussian) distribution）**的概率密度函数：\n",
    "\n",
    "$$\n",
    "P\\left(x;\\mu,\\sigma^2\\right)=\\frac{1}{\\sqrt{2\\pi}\\sigma}\\exp\\left(-\\frac{1}{2\\sigma^2}\\left(x-\\mu\\right)^2\\right)\n",
    "$$\n",
    "\n",
    "式中指数函数的参数$-\\frac{1}{2\\sigma^2}\\left(x-\\mu\\right)^2$是一个关于$x$的二次函数，其二次项系数为负，是一个开口向下的抛物线（parabola）。而整个式子的系数$\\frac{1}{\\sqrt{2\\pi}\\sigma}$是一个常量，不依靠变量$x$，因此我们可以把它简单的看做是一个保证$\\displaystyle\\frac{1}{\\sqrt{2\\pi}\\sigma}\\int_{-\\infty}^{\\infty}\\exp\\left(-\\frac{1}{2\\sigma^2}\\left(x-\\mu\\right)^2\\right)=1$的“标准化因子”。\n",
    "\n",
    "<img src=\"./resource/sn07_image01.png\" width=\"800\" alt=\"\" align=center />\n",
    "\n",
    "左图为关于$X$的单变量高斯分布的概率密度，右图为关于$X_1,X_2$的多元高斯分布的概率密度。\n",
    "\n",
    "在多元高斯分布中，指数函数的参数$-\\frac{1}{2}\\left(x-\\mu\\right)^T\\varSigma^{-1}\\left(x-\\mu\\right)$是关于$x$的二次型。因为$\\varSigma$是正定的（正定矩阵的逆矩阵仍是正定矩阵），则对于任意非零向量$z$有$z^T\\varSigma^{-1}z\\gt0$。这意味着对于任意$x\\neq\\mu$有：\n",
    "\n",
    "$$\n",
    "\\begin{align}\n",
    "\\left(x-\\mu\\right)^T\\varSigma^{-1}\\left(x-\\mu\\right)&\\gt0\\\\\n",
    "-\\frac{1}{2}\\left(x-\\mu\\right)^T\\varSigma^{-1}\\left(x-\\mu\\right)&\\lt0\n",
    "\\end{align}\n",
    "$$\n",
    "\n",
    "类似单变量中的情形，我们可以把指数函数的参数想象成一个开口向下的抛物面。而整个式子的系数$\\displaystyle\\frac{1}{\\left(2\\pi\\right)^{n/2}\\left\\lvert\\varSigma\\right\\rvert^{1/2}}$比单变量情形下的系数更加复杂，不过它依然不依靠$x$，所以我们仍然可以将其看做一个用来保证$\\displaystyle\\frac{1}{\\left(2\\pi\\right)^{n/2}\\left\\lvert\\varSigma\\right\\rvert^{1/2}}\\int_{-\\infty}^{\\infty}\\int_{-\\infty}^{\\infty}\\cdots\\int_{-\\infty}^{\\infty}\\exp\\left(-\\frac{1}{2}\\left(x-\\mu\\right)^T\\varSigma^{-1}\\left(x-\\mu\\right)\\right)\\mathrm dx_1\\mathrm dx_2\\cdots\\mathrm dx_n=1$的“标准化因子”。\n",
    "\n",
    "## 2. 协方差矩阵\n",
    "\n",
    "理解协方差矩阵的概念是掌握多元高斯分布的关键。回忆对于一对随机变量$X,Y$，其**协方差（covariance）**定义为：\n",
    "\n",
    "$$\n",
    "\\mathrm{Cov}[X,Y]=\\mathrm E\\left[(X-\\mathrm E[X])(Y-\\mathrm E[Y])\\right]=\\mathrm E[XY]-\\mathrm E[X]\\mathrm E[Y]\n",
    "$$\n",
    "\n",
    "在处理多个变量时，协方差矩阵提供了一种对所有“变量对”协方差的简明表达。具体的讲，协方差矩阵（通常记为$\\varSigma$）是一个$n\\times n$矩阵，它的第$(i,j)$个元素为$\\mathrm{Cov}[X_i,X_j]$。\n",
    "\n",
    "下列命题为我们提供了另一种关于随机变量$X$的协方差矩阵的描述（证明见附录A.1）：\n",
    "\n",
    "**命题1：**对于任意一个期望为$\\mu$协方差矩阵为$\\varSigma$的随机变量$X$，有：\n",
    "\n",
    "$$\n",
    "\\varSigma=\\mathrm E\\left[(X-\\mu)(X-\\mu)^T\\right]=\\mathrm E\\left[XX^T\\right]-\\mu\\mu^T\\tag{1}\n",
    "$$\n",
    "\n",
    "在多元高斯分布的定义中，我们要求协方差矩阵$\\varSigma$是一个对称正定矩阵（即$\\varSigma\\in\\mathbb S_{++}^n$）。为什么需要这样的约束条件？在下面的命题中可以看到，*任意*随机向量的协方差矩阵必须是对称半正定矩阵：\n",
    "\n",
    "**命题2：**假设$\\varSigma$是某个随机向量$X$的协方差矩阵，则$\\varSigma$一定是对称半正定矩阵。\n",
    "\n",
    "**证明：**从$\\varSigma$的定义中可以直接看到起对称性（$\\varSigma=\\varSigma^T$），接下来我们证明它是半正定矩阵，对于任意$z\\in\\mathbb R^n$：\n",
    "\n",
    "$$\n",
    "\\begin{align}\n",
    "z^T\\varSigma z&=\\sum_{i=1}^n\\sum_{j=1}^n\\left(\\varSigma_{ij}z_iz_j\\right)\\tag{2}\\\\\n",
    "&=\\sum_{i=1}^n\\sum_{j=1}^n\\left(\\mathrm{Cov}\\left[X_i,X_j\\right]\\cdot z_iz_j\\right)\\\\\n",
    "&=\\sum_{i=1}^n\\sum_{j=1}^n\\left(\\mathrm E\\left[\\left(X_i-\\mathrm E\\left[X_i\\right]\\right)\\left(X_j-\\mathrm E\\left[X_j\\right]\\right)\\right]\\cdot z_iz_j\\right)\\\\\n",
    "&=\\mathrm E\\left[\\sum_{i=1}^n\\sum_{j=1}^n\\left(X_i-\\mathrm E\\left[X_i\\right]\\right)\\left(X_j-\\mathrm E\\left[X_j\\right]\\cdot z_iz_j\\right)\\right]\\tag{3}\n",
    "\\end{align}\n",
    "$$\n",
    "\n",
    "$(2)$式就是二次型展开后的样子（见[线性代数](sn01.ipynb)笔记），$(3)$式利用了期望的线性性质（见[概率论](sn02.ipynb)笔记）。\n",
    "\n",
    "为了完成证明，现在观察中括号内的项形为$\\sum_i\\sum_jx_ix_jz_iz_j=\\left(x^Tz\\right)^2\\geq0$（参考[问题集1](cs229.stanford.edu/materials/ps1.pdf)）。因此，期望括号内的这个量总是非负的，则期望本身总是非负的，即$z^T\\varSigma z\\geq0$。\n",
    "\n",
    "上面的命题证明了一个合法的协方差矩阵$\\varSigma$总是对称半正定的。而为了使$\\varSigma^{-1}$存在（出现在多元高斯分布定义式中），则$\\varSigma$必须是可逆的（即满秩）。由于任意满秩的对称半正定矩阵必定是对称正定矩阵，则有$\\varSigma$一定是对称正定矩阵。\n",
    "\n",
    "## 3. 对角协方差矩阵的情形\n",
    "\n",
    "为了对多元高斯分布有一个直观认识，我们来看一个简单的例子，$n=2$且协方差矩阵$\\varSigma$为对角矩阵时：\n",
    "\n",
    "$$\n",
    "x=\\begin{bmatrix}x_1\\\\x_2\\end{bmatrix}\\qquad\\mu=\\begin{bmatrix}\\mu_1\\\\\\mu_2\\end{bmatrix}\\qquad\\varSigma=\\begin{bmatrix}\\sigma_1^2&0\\\\0&\\sigma_2^2\\end{bmatrix}\n",
    "$$\n",
    "\n",
    "在这样的条件下，多元高斯分布的概率密度为：\n",
    "\n",
    "$$\n",
    "\\begin{align}\n",
    "p\\left(x;\\mu,\\varSigma\\right)&=\\frac{1}{2\\pi\\begin{vmatrix}\\sigma_1^2&0\\\\0&\\sigma_2^2\\end{vmatrix}^{1/2}}\\exp\\left(-\\frac{1}{2}\\begin{bmatrix}x_1-\\mu_1\\\\x_2-\\mu_2\\end{bmatrix}^T\\begin{bmatrix}\\sigma_1^2&0\\\\0&\\sigma_2^2\\end{bmatrix}^{-1}\\begin{bmatrix}x_1-\\mu_1\\\\x_2-\\mu_2\\end{bmatrix}\\right)\\\\\n",
    "&=\\frac{1}{2\\pi\\left(\\sigma_1^2\\cdot\\sigma_2^2-0\\cdot0\\right)^{1/2}}\\exp\\left(-\\frac{1}{2}\\begin{bmatrix}x_1-\\mu_1\\\\x_2-\\mu_2\\end{bmatrix}^T\\begin{bmatrix}\\frac{1}{\\sigma_1^2}&0\\\\0&\\frac{1}{\\sigma_2^2}\\end{bmatrix}^{-1}\\begin{bmatrix}x_1-\\mu_1\\\\x_2-\\mu_2\\end{bmatrix}\\right)\n",
    "\\end{align}\n",
    "$$\n",
    "\n",
    "这一步使用了$2\\times 2$矩阵行列式的计算式$\\begin{vmatrix}a&b\\\\c&d\\end{vmatrix}=ad-bc$；而对角矩阵求逆就是将对角线上的每个元素求导。继续我们的演算：\n",
    "\n",
    "$$\n",
    "\\begin{align}\n",
    "p\\left(x;\\mu,\\varSigma\\right)&=\\frac{1}{2\\pi\\sigma_1\\sigma_2}\\exp\\left(-\\frac{1}{2}\\begin{bmatrix}x_1-\\mu_1\\\\x_2-\\mu_2\\end{bmatrix}^T\\begin{bmatrix}\\frac{1}{\\sigma_1^2}\\left(x_1-\\mu_1\\right)\\\\\\frac{1}{\\sigma_2^2}\\left(x_2-\\mu_2\\right)\\end{bmatrix}\\right)\\\\\n",
    "&=\\frac{1}{2\\pi\\sigma_1\\sigma_2}\\exp\\left(-\\frac{1}{2\\sigma_1^2}\\left(x_1-\\mu_1\\right)^2-\\frac{1}{2\\sigma_2^2}\\left(x_2-\\mu_2\\right)^2\\right)\\\\\n",
    "&=\\frac{1}{2\\pi\\sigma_1}\\exp\\left(-\\frac{1}{2\\sigma_1^2}\\left(x_1-\\mu_1\\right)^2\\right)\\cdot\\frac{1}{2\\pi\\sigma_2}\\exp\\left(-\\frac{1}{2\\sigma_2^2}\\left(x_2-\\mu_2\\right)^2\\right)\n",
    "\\end{align}\n",
    "$$\n",
    "\n",
    "很容易看出最后一个式子是两个独立的高斯分布的乘积，其中一个期望为$\\mu_1$方差为$\\sigma_1^2$，另一个期望为$\\mu_2$方差为$\\sigma_2^2$。推广到一般情况，一个期望为$\\mu\\in\\mathbb R^n$、协方差为对角矩阵$\\mathrm{diag}\\left(\\sigma_1^2,\\sigma_2^2,\\cdots,\\sigma_n^2\\right)$的$n$维高斯分布，与一组由$n$个相互独立的以$\\mu_i$为期望、$\\sigma_i^2$为方差的高斯分布组成的分布是相同的。\n",
    "\n",
    "## 4. Isocontours\n",
    "\n",
    "另一种了解多元高斯分布概念的方法是理解它的**isocontours**。对于函数$f:\\mathbb R^2\\to\\mathbb R$，其等值线是一个集合$\\left\\{x\\in\\mathbb R^2: f(x)=c, c\\in\\mathbb R\\right\\}$（isocontours也称作level curves。一般的函数$f:\\mathbb R^n\\to\\mathbb R$的**level set**是一个形为$\\left\\{x\\in\\mathbb R^2: f(x)=c, c\\in\\mathbb R\\right\\}$的集合）。\n",
    "\n",
    "### 4.1 Isocontours的形状\n",
    "\n",
    "多元高斯分布的isocontours是什么样的？我们继续使用前面简单的例子，$n=1$且$\\varSigma$为对角矩阵：\n",
    "\n",
    "$$\n",
    "x=\\begin{bmatrix}x_1\\\\x_2\\end{bmatrix}\\qquad\\mu=\\begin{bmatrix}\\mu_1\\\\\\mu_2\\end{bmatrix}\\qquad\\varSigma=\\begin{bmatrix}\\sigma_1^2&0\\\\0&\\sigma_2^2\\end{bmatrix}\n",
    "$$\n",
    "\n",
    "上一小节的最后我们得到了：\n",
    "\n",
    "$$\n",
    "\\begin{align}\n",
    "p\\left(x;\\mu,\\varSigma\\right)&=\\frac{1}{2\\pi\\sigma_1\\sigma_2}\\exp\\left(-\\frac{1}{2\\sigma_1^2}\\left(x_1-\\mu_1\\right)^2-\\frac{1}{2\\sigma_2^2}\\left(x_2-\\mu_2\\right)^2\\right)\\tag{4}\n",
    "\\end{align}\n",
    "$$\n",
    "\n",
    "现在来考虑一下$p\\left(x;\\mu,\\varSigma\\right)=c$时由平面上所有点组成的level set，其中$c\\in\\mathbb R$为某些常数。计算所有$x_1,x_2\\in\\mathbb R$：\n",
    "\n",
    "$$\n",
    "\\begin{align}\n",
    "c&=\\frac{1}{2\\pi\\sigma_1\\sigma_2}\\exp\\left(-\\frac{1}{2\\sigma_1^2}\\left(x_1-\\mu_1\\right)^2-\\frac{1}{2\\sigma_2^2}\\left(x_2-\\mu_2\\right)^2\\right)\\\\\n",
    "2\\pi c\\sigma_1\\sigma_2&=\\exp\\left(-\\frac{1}{2\\sigma_1^2}\\left(x_1-\\mu_1\\right)^2-\\frac{1}{2\\sigma_2^2}\\left(x_2-\\mu_2\\right)^2\\right)\\\\\n",
    "\\log\\left(2\\pi c\\sigma_1\\sigma_2\\right)&=-\\frac{1}{2\\sigma_1^2}\\left(x_1-\\mu_1\\right)^2-\\frac{1}{2\\sigma_2^2}\\left(x_2-\\mu_2\\right)^2\\\\\n",
    "\\log\\left(\\frac{1}{2\\pi c\\sigma_1\\sigma_2}\\right)&=\\frac{1}{2\\sigma_1^2}\\left(x_1-\\mu_1\\right)^2+\\frac{1}{2\\sigma_2^2}\\left(x_2-\\mu_2\\right)^2\\\\\n",
    "1&=\\frac{\\left(x_1-\\mu_1\\right)^2}{2\\sigma_1^2\\log\\left(\\frac{1}{2\\pi c\\sigma_1\\sigma_2}\\right)}+\\frac{\\left(x_2-\\mu_2\\right)^2}{2\\sigma_2^2\\log\\left(\\frac{1}{2\\pi c\\sigma_1\\sigma_2}\\right)}\n",
    "\\end{align}\n",
    "$$\n",
    "\n",
    "定义$\\displaystyle r_1=\\sqrt{2\\sigma_1^2\\log\\left(\\frac{1}{2\\pi c\\sigma_1\\sigma_2}\\right)},\\  r_2=\\sqrt{2\\sigma_2^2\\log\\left(\\frac{1}{2\\pi c\\sigma_1\\sigma_2}\\right)}$，则有：\n",
    "\n",
    "$$\n",
    "1=\\left(\\frac{x_1-\\mu_1}{r_1}\\right)^2+\\left(\\frac{x_2-\\mu_2}{r_2}\\right)^2\\tag{5}\n",
    "$$\n",
    "\n",
    "$(5)$式就是高中解析几何讲过的长短轴与坐标轴平行的**椭圆（axis-aligned ellipse）**，其中心位于$\\left(\\mu_1,\\mu_2\\right)$，与$x_1$平行的轴长为$2r_1$，与$x_2$平行的轴长为$2r_2$。\n",
    "\n",
    "## 4.2 轴长\n",
    "\n",
    "<img src=\"./resource/sn07_image02.png\" width=\"800\" alt=\"\" align=center />\n",
    "\n",
    "（左图为以$\\mu=\\begin{bmatrix}3\\\\2\\end{bmatrix}$为期望、以对角矩阵$\\varSigma=\\begin{bmatrix}25&0\\\\0&9\\end{bmatrix}$为协方差矩阵的概率密度函数的热力图。可以看到椭圆的中心位于$(3,2)$，椭圆的长短轴之比为$5:3$。右图为以$\\mu=\\begin{bmatrix}3\\\\2\\end{bmatrix}$为期望、以对角矩阵$\\varSigma=\\begin{bmatrix}10&5\\\\5&5\\end{bmatrix}$为协方差矩阵的概率密度函数的热力图，它的长短轴并不与坐标轴垂直。椭圆的中心仍在$(3,2)$，但是长短轴被某个线性变换旋转了一个角度。）\n",
    "\n",
    "为了更好的理解level curves的形状是如何随着多元高斯分布的随机变量的改变而改变的，假设我们对$c$取高斯分布概率密度峰值$1/e$时的$r_1,r_2$感兴趣。\n",
    "\n",
    "先观察$(4)$式的最大值，此时$x_1=\\mu_1,x_2=\\mu_2$，代回$(4)$式得到高斯分布概率密度的峰值为$\\frac{1}{2\\pi\\sigma_1\\sigma_2}$。\n",
    "\n",
    "再令$c=\\frac{1}{e}\\left(\\frac{1}{2\\pi\\sigma_1\\sigma_2}\\right)$，带入$r_1,r_2$求得：\n",
    "\n",
    "$$\n",
    "\\begin{eqnarray}\n",
    "r_1&=\\sqrt{2\\sigma_1^2\\log\\left(\\frac{1}{2\\pi\\sigma_1\\sigma_2\\cdot\\frac{1}{e}\\left(\\frac{1}{2\\pi\\sigma_1\\sigma_2}\\right)}\\right)}&=\\sigma_1\\sqrt 2\\\\\n",
    "r_2&=\\sqrt{2\\sigma_2^2\\log\\left(\\frac{1}{2\\pi\\sigma_1\\sigma_2\\cdot\\frac{1}{e}\\left(\\frac{1}{2\\pi\\sigma_1\\sigma_2}\\right)}\\right)}&=\\sigma_2\\sqrt 2\n",
    "\\end{eqnarray}\n",
    "$$\n",
    "\n",
    "从这里可以看出，对于第$i$个维度（分量$x_i$），使其概率达到高斯分布概率密度峰值的$1/e$的相应轴长（$r_i$）与该维度的相应标准差$\\sigma_i$呈正比。从直觉上讲这也是对的：随机变量$x_i$的方差越小，则在该维度上高斯分布图像的峰值就越“紧凑”，于是反映在isocontours上椭圆在该维度上的轴$r_i$就越短。\n",
    "\n",
    "## 4.3 非对角协方差矩阵及高维情形\n",
    "\n",
    "很明显，上面的推导依赖于$\\varSigma$是对角矩阵这一假设，不过即使在非对角矩阵的情形下，推导的结论也有相似之处。推广到一般情况下，isocontours的图像不再是长短轴与坐标轴平行的椭圆了，现在的椭圆这是被**旋转**了一个角度而已。再推广到高维情形下，在$n$维环境中，只有level set的几何形态变成了$\\mathbb R^n$中的椭球面而已。\n",
    "\n",
    "## 5. 线性变换的解释\n",
    "\n",
    "前几个小节我们主要关注对具有角型协方差矩阵的多元高斯分布是如何变化的。我们还发现具有对角型协方差矩阵的$n$维多元高斯分布其实可以被看做是以$\\mu_i$为期望、$\\sigma_i^2$为方差的$n$个相互独立的高斯分布的随机变量组成的分布。在这一小节，我们再从变量值的角度解释一下非对角协方差矩阵的情形。\n",
    "\n",
    "这一小节的关键在于下面这个定理（证明见附录A.2中）：\n",
    "\n",
    "**定理1：**令$X\\sim\\mathcal N\\left(\\mu,\\varSigma\\right),\\ \\mu\\in\\mathbb R^n,\\ \\sigma\\in\\mathbb S_{++}^n$，则存在矩阵$B\\in\\mathbb R^n$，若定义$Z=B^{-1}X(X-\\mu)$，则$Z\\sim\\mathcal N(0,I)$。\n",
    "\n",
    "注意到如果$Z\\sim\\mathcal N(0,I)$，利用第4节的知识，则$Z$可以被看做是由$n$个相互独立的标准正态分布（$Z_i\\sim\\mathcal N(0,1)$）组成的。再进一步，如果$Z=B^{-1}(X-\\mu)$，则用简单的代数就可以知道$X=BZ+\\mu$。\n",
    "\n",
    "因此，这个定理指出，任何服从多元高斯分布的随机变量$X$都能够通过一个线性变换（$X=BZ+\\mu$）分解为$n$个相互独立的标准正态分布。\n",
    "\n",
    "## 附录A.1\n",
    "\n",
    "我们来证明$(1)$式的前一个等式\n",
    "\n",
    "（后一个等式直接展开即可得到$\\mathrm E\\left[(X-\\mu)(X-\\mu)^T\\right]=\\mathrm E\\left[XX^T-X\\mu^T-\\mu X^T+\\mu\\mu^T\\right]=\\mathrm E\\left[XX^T\\right]-\\mathrm E[X]\\mu^T-\\mu\\mathrm E\\left[X^T\\right]+\\mu\\mu^T=\\mathrm E\\left[XX^T\\right]-\\mu\\mu^T$，注意$E[X]=\\mu$，而常数的期望是常数。）\n",
    "\n",
    "$$\n",
    "\\begin{align}\n",
    "\\varSigma&=\n",
    "\\begin{bmatrix}\n",
    "\\mathrm{Cov}[X_1,X_1]&\\cdots&\\mathrm{Cov}[X_1,X_n]\\\\\n",
    "\\vdots&\\ddots&\\vdots\\\\\n",
    "\\mathrm{Cov}[X_n,X_1]&\\cdots&\\mathrm{Cov}[X_n,X_n]\n",
    "\\end{bmatrix}\\\\\n",
    "&=\\begin{bmatrix}\n",
    "\\mathrm{E}\\left[(X_1-\\mu_1)^2\\right]&\\cdots&\\mathrm{E}\\left[(X_1-\\mu_1)(X_n-\\mu_n)\\right]\\\\\n",
    "\\vdots&\\ddots&\\vdots\\\\\n",
    "\\mathrm{E}\\left[(X_n-\\mu_n)(X_1-\\mu_1)\\right]&\\cdots&\\mathrm{E}\\left[(X_n-\\mu_n)^2\\right]\n",
    "\\end{bmatrix}\\\\\n",
    "&=\\mathrm{E}\\begin{bmatrix}\n",
    "(X_1-\\mu_1)^2&\\cdots&(X_1-\\mu_1)(X_n-\\mu_n)\\\\\n",
    "\\vdots&\\ddots&\\vdots\\\\\n",
    "(X_n-\\mu_n)(X_1-\\mu_1)&\\cdots&(X_n-\\mu_n)^2\n",
    "\\end{bmatrix}\\tag{6}\\\\\n",
    "&=\\mathrm E\\begin{bmatrix}\\begin{bmatrix}X_1-\\mu_1\\\\\\vdots\\\\X_n-\\mu_n\\end{bmatrix}\\begin{bmatrix}X_1-\\mu_1\\cdots X_n-\\mu_n\\end{bmatrix}\\end{bmatrix}\\tag{7}\\\\\n",
    "&=\\mathrm E\\left[(X-\\mu)(X-\\mu)^T\\right]\n",
    "\\end{align}\n",
    "$$\n",
    "\n",
    "$(6)$式的根据是矩阵的期望就是对矩阵每一个元素取期望，而$(7)$式的根据是向量乘法：\n",
    "\n",
    "$$\n",
    "zz^T=\\begin{bmatrix}z_1\\\\z_2\\\\\\vdots\\\\z_n\\end{bmatrix}\\begin{bmatrix}z_1&z_2&\\cdots&z_n\\end{bmatrix}\n",
    "=\\begin{bmatrix}z_1z_1&z_1z_2&\\cdots&z_1z_n\\\\z_2z_1&z_2z_2&\\cdots&z_2z_n\\\\\\vdots&\\vdots&\\ddots&\\vdots\\\\z_nz_1&z_nz_2&\\cdots&z_nz_n\\end{bmatrix}\n",
    "$$\n",
    "\n",
    "## 附录A.2\n",
    "\n",
    "**证明定理1：**令$X\\sim\\mathcal N\\left(\\mu,\\varSigma\\right),\\ \\mu\\in\\mathbb R^n,\\ \\sigma\\in\\mathbb S_{++}^n$，则存在矩阵$B\\in\\mathbb R^n$，若定义$Z=B^{-1}X(X-\\mu)$，则$Z\\sim\\mathcal N(0,I)$。\n",
    "\n",
    "证明分为两步：我们先要证明$\\varSigma$可以被分解为$\\varSigma=BB^T$的形式，其中$B$是某个可逆矩阵；之后再将随机变量$X$使用线性变换$Z=B^{-1}(X-\\mu)$变为随机变量$Z$。\n",
    "\n",
    "**第一步：分解协方差矩阵。**回忆[线性代数](sn01.ipynb)笔记中关于对称矩阵的两个性质（见“对称矩阵的特征值与特征向量”一节）：\n",
    "\n",
    "1. 任意实对称矩阵$A\\in\\mathbb R^{n\\times n}$必定能被写成$A=U\\varLambda U^T$的形式，其中$U$是一个满秩正交矩阵，每一列都来自$A$的特征向量；$\\varLambda$是一个对角矩阵，对角线元素均来自$A$的特征值。\n",
    "\n",
    "2. 如果$A$是对称正定矩阵，则$A$的特征值均为正值。\n",
    "\n",
    "由于协方差矩阵$\\varSigma$是一个正定矩阵，则根据性质1就可以使用恰当的$U,\\varLambda$将矩阵分解为$A=U\\varLambda U^T$。再根据第二个性质，可以定义矩阵$\\varLambda^{1/2}\\in\\mathbb R^{n\\times n}$，该对角矩阵中对角线元素皆为原$\\varLambda$对角线元素的平方根。所以有$\\varLambda=\\varLambda^{1/2}\\left(\\varLambda^{1/2}\\right)^T$，那么可以将$\\varSigma$进一步分解为：\n",
    "\n",
    "$$\n",
    "\\varSigma=\n",
    "U\\varLambda U^T=\n",
    "U\\varLambda^{1/2}\\left(\\varLambda^{1/2}\\right)^TU^T=\n",
    "U\\varLambda^{1/2}\\left(U\\varLambda^{1/2}\\right)^T=\n",
    "BB^T\n",
    "$$\n",
    "\n",
    "其中$B=U\\varLambda^{1/2}$。（关于$B$是可逆矩阵：很明显正交矩阵$U$是可逆的，而可逆矩阵$U$右乘满秩对角矩阵后，仅会对$U$每列的大小产生影响，并不会改变$U$的秩，得证。）于是可以得到$\\varSigma^{-1}=B^{-T}B^{-1}$，将其代入多元高斯分布的概率密度函数：\n",
    "\n",
    "$$\n",
    "p\\left(x;\\mu,\\varSigma\\right)=\\frac{1}{\\left(2\\pi\\right)^{n/2}\\left\\lvert\\varSigma\\right\\rvert^{1/2}}\\exp\\left(-\\frac{1}{2}\\left(x-\\mu\\right)^TB^{-T}B^{-1}\\left(x-\\mu\\right)\\right)\\tag{8}\n",
    "$$\n",
    "\n",
    "**第二步：改变随机变量。**定义向量形式的随机变量$Z=B^{-1}(X-\\mu)$。介绍一个概率论基本公式（并没有在概率论的笔记中出现），用来描述原随机变量与变更后随机变量间的关系：\n",
    "\n",
    "* 设随机变量$X=[X_1,\\cdots,X_n]^T\\in\\mathbb R^n$是一个向量形随机变量，其联合概率密度函数为$f_X:\\mathbb R^n\\to \\mathbb R$。若$Z=H(X)\\in\\mathbb R^n$，其中$H$是一个双射可微函数，则随机变量$Z$的联合概率密度函数为$f_Z:\\mathbb R^n\\to\\mathbb R$，其中$f_z$定义为：\n",
    "\n",
    "    $$\n",
    "    f_Z(z)=f_X(x)\\cdot\n",
    "    \\left\\lvert\n",
    "    \\det\\left(\n",
    "    \\begin{bmatrix}\n",
    "    \\frac{\\partial x_1}{\\partial z_1}&\\cdots&\\frac{\\partial x_1}{\\partial z_n}\\\\\n",
    "    \\vdots&\\ddots&\\vdots\\\\\n",
    "    \\frac{\\partial x_n}{\\partial z_1}&\\cdots&\\frac{\\partial x_n}{\\partial z_n}\n",
    "    \\end{bmatrix}\n",
    "    \\right)\n",
    "    \\right\\rvert\n",
    "    $$\n",
    "\n",
    "使用改变随机变量的公式，（此处跳过线性代数计算）可以发现随机变量$Z$具有如下的联合概率密度：\n",
    "\n",
    "$$\n",
    "p_Z(z)=\\frac{1}{(2\\pi)^{n/2}}\\exp\\left(-\\frac{1}{2}z^Tz\\right)\\tag{9}\n",
    "$$\n",
    "\n",
    "得证。"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.5.2"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 0
}
